// 引入axios 进行二次封装
import axios from "axios";
// 引入进度条
import nprogress from "nprogress";
// start: 进度条开始 done:进度条完成
// 引入进度条样式
import "nprogress/nprogress.css";

// 创建一个axios实例
const requests = axios.create({
  // 基础路径
  baseURL: "/api",
  timeout: 5000,
});

// 请求拦截器, 请求发送之前,做一些业务处理
requests.interceptors.request.use((config) => {
  nprogress.start();
  // 配置对象,headers请求头
  return config;
});
// 相应拦截器
requests.interceptors.response.use(
  (successRes) => {
    nprogress.done();
    // 成功
    console.log(successRes);
    return successRes.data;
  },
  (errorResponse) => {
    alert(errorResponse.message);
    // 失败
    return new Permissions();
  }
);
// 对外暴露
export default requests;
